home *** CD-ROM | disk | FTP | other *** search
- class ScroobyTricks
- {
- var Bonus;
- function ScroobyTricks()
- {
- }
- function initTricks()
- {
- this.Bonus = true;
- _global.SMeter = 1;
- _global.GravityPower = 1.25;
- }
- function checkTheAction(_Left, _Right, _Up, _Down)
- {
- if(_global.Perso._y > _global.Perso.PointColsY)
- {
- this.onRamp(_Left,_Right,_Up,_Down);
- }
- else
- {
- this.onAir(_Left,_Right,_Up,_Down);
- }
- }
- function onRamp(_Left, _Right, _Up, _Down)
- {
- var _loc1_ = _global;
- var _loc2_ = this;
- var _loc3_ = _Right;
- if(_loc1_.Perso.speed < 8 && _loc1_.Perso._x < _loc1_.Perso.PointColsX + 10 && _loc1_.Perso.speed > -8 && _loc1_.Perso._x > _loc1_.Perso.PointColsX - 10)
- {
- if(_Left == true)
- {
- _loc1_.Perso.speed = -12;
- }
- else if(_loc3_ == true)
- {
- _loc1_.Perso.speed = 12;
- }
- }
- if(_Left == true)
- {
- _loc1_.Perso.speed -= _loc1_.SMeter / 5;
- if(_loc1_.Perso.speed < 0)
- {
- if(_loc1_.Perso.myEtat == "landing" && _loc2_.Bonus == true)
- {
- _loc2_.Bonus = false;
- _loc1_.Perso.speed -= _loc1_.SMeter / 2;
- if(_loc1_.SMeter < 5)
- {
- _loc1_.SMeter += 0.04;
- }
- }
- if(_loc1_.SMeter < 5)
- {
- _loc1_.SMeter += 0.005;
- }
- }
- else if(_loc1_.SMeter > 1)
- {
- _loc1_.SMeter -= 0.0003;
- }
- }
- else if(_loc3_ == true)
- {
- _loc1_.Perso.speed += _loc1_.SMeter / 5;
- if(_loc1_.Perso.speed > 0)
- {
- if(_loc1_.Perso.myEtat == "landing" && _loc2_.Bonus == true)
- {
- _loc2_.Bonus = false;
- _loc1_.Perso.speed += _loc1_.SMeter / 2;
- if(_loc1_.SMeter < 5)
- {
- _loc1_.SMeter += 0.04;
- }
- }
- if(_loc1_.SMeter < 5)
- {
- _loc1_.SMeter += 0.005;
- }
- }
- else if(_loc1_.SMeter > 1)
- {
- _loc1_.SMeter -= 0.0003;
- }
- }
- if(_loc3_ == false && _Left == false)
- {
- if(_loc1_.Perso.speed > 0)
- {
- _loc1_.Perso.speed += _loc1_.SMeter / 8;
- }
- if(_loc1_.Perso.speed < 0)
- {
- _loc1_.Perso.speed -= _loc1_.SMeter / 8;
- }
- }
- if(_loc1_.Perso.myEtat == "idle" && _Up == false)
- {
- _loc2_.Bonus = true;
- }
- if(_Left == true && _loc1_.Perso.speed < 0)
- {
- if(_loc1_.Perso.myEtat != "Downhill")
- {
- _loc1_.Perso.myEtat = "Downhill";
- _loc1_.Perso.goto("Downhill");
- }
- }
- else if(_loc3_ == true && _loc1_.Perso.speed > 0)
- {
- if(_loc1_.Perso.myEtat != "Downhill")
- {
- _loc1_.Perso.myEtat = "Downhill";
- _loc1_.Perso.goto("Downhill");
- }
- }
- else if(_loc1_.Perso.myEtat != "idle")
- {
- _loc1_.Perso.myEtat = "idle";
- _loc1_.Perso.goto("idle");
- }
- }
- function onAir(_Left, _Right, _Up, _Down)
- {
- var _loc1_ = _global;
- var _loc2_ = this;
- var _loc3_ = _Down;
- if(_Up == true)
- {
- if(_loc1_.Perso.myEtat == "upswitch")
- {
- if(_loc1_.SMeter > 1)
- {
- _loc1_.SMeter -= 0.001;
- }
- }
- if(_loc1_.Perso.Falling < 0)
- {
- if(_loc1_.SMeter < 5)
- {
- _loc1_.SMeter += 0.005;
- }
- if(_loc1_.Perso.myEtat != "trick" && _loc1_.Perso.myEtat != "upswitch")
- {
- _loc1_.Perso.myEtat = "trick";
- _loc1_.Perso.goto("upDownhill");
- }
- }
- else if(_loc1_.SMeter > 1)
- {
- _loc1_.SMeter -= 0.001;
- }
- }
- else if(_loc3_ == true)
- {
- if(_loc1_.Perso.myEtat == "upswitch")
- {
- _loc2_.Bonus = false;
- }
- if(_loc1_.Perso.myEtat == "downswitch" && _loc2_.Bonus == true)
- {
- _loc2_.Bonus = false;
- if(_loc1_.SMeter < 5)
- {
- _loc1_.SMeter += 0.05;
- if(_loc1_.SMeter > 5)
- {
- _loc1_.SMeter = 5;
- }
- }
- }
- if(_loc1_.Perso.Falling > 0)
- {
- if(_loc1_.SMeter < 5)
- {
- _loc1_.SMeter += 0.005;
- }
- if(_loc1_.Perso.myEtat != "downDownhill" && _loc1_.Perso.myEtat != "upswitch")
- {
- _loc1_.Perso.myEtat = "downDownhill";
- _loc1_.Perso.goto("downDownhill");
- }
- }
- else if(_loc1_.SMeter > 1)
- {
- _loc1_.SMeter -= 0.001;
- }
- }
- if(_loc1_.Perso.myEtat == "upswitch" && _loc3_ == false)
- {
- _loc2_.Bonus = true;
- }
- if(_loc1_.Perso.myEtat == "downfast" && _Left == false && _Right == false)
- {
- _loc2_.Bonus = true;
- }
- if(_Left == true || _Right == true)
- {
- _loc2_.Bonus = false;
- if(_loc1_.SMeter > 1)
- {
- _loc1_.SMeter -= 0.00025;
- }
- }
- if(_Up == false && _loc1_.Perso.Falling < 0)
- {
- if(_loc1_.Perso.myEtat != "upfast" && _loc1_.Perso.myEtat != "trick" && _loc1_.Perso.myEtat != "upswitch")
- {
- _loc1_.Perso.myEtat = "upfast";
- _loc1_.Perso.goto("upfast");
- }
- if(_loc1_.Perso.myEtat == "trick")
- {
- _loc1_.Perso.myEtat = "upfast";
- _loc1_.Perso.Trickgoto("released");
- }
- }
- else if(_loc3_ == false && _loc1_.Perso.Falling > 0)
- {
- if(_loc1_.Perso.myEtat != "downfast" && _loc1_.Perso.myEtat != "upswitch")
- {
- _loc1_.Perso.myEtat = "downfast";
- _loc1_.Perso.goto("downfast");
- }
- }
- }
- }
-